package com.my.run;

import java.lang.reflect.InvocationTargetException;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;

import com.my.entity.Human;
import com.my.utils.Reflect;

/**
 * @author Maple.Chen
 * @date 2020年10月2日
 * @description <p>测试类1</p>
 */

public class Main1 {
	
	public static void main(String[] args) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException{
		// 声明一个使用自定义注解的对象，并对该对象使用构造方法初始化
		Human human = new Human("zahngsan", true);
		// 通过反射对对象进行校验
		Map<String, String> resultMap = Reflect.MyNotNullRulVvalidate(human);
		// 展示校验结果
		if ( resultMap.size() == 0 ){
			System.out.println("校验完成，该对象无不符合规范的成员变量");
		}else if ( resultMap.size() > 0 ) {
			Iterator<Entry<String, String>> iter = resultMap.entrySet().iterator();
			System.out.println("-------- 错误信息打印 start --------");
			while (iter.hasNext()) {
	        	Map.Entry<String, String> entry = iter.next();
	        	System.out.println(entry.getKey() + "：" + entry.getValue());
			}
			System.out.println("-------- 错误信息打印  end  --------");
		}
	}
	
}
